A computing device may use multi-threaded processing to more efficiently present a user interface to the user. Multi-threaded processing executes multiple sequences of instructions nearly simultaneously, either in the same processor or across multiple processors in a processing core. The processing core may execute a primary process having a primary code set, such as an application code set, to execute the infrastructure of the user interface module. The primary code thread may offload tasks to a secondary process having a secondary code set, executed by the processing core as a secondary code thread. For example, a user interface application code thread may offload the presentation aspects of the user interface to a secondary code set, executed as a secondary code thread, for rendering. Thus the secondary code thread may be referred to as a rendering code thread. The secondary code thread may render a user interface object, such as an animation graphic or a bitmap image, referred to as a composition object.